
#ifndef _RADIX_ENGINE_ENGINE_H_
#define _RADIX_ENGINE_ENGINE_H_

#include <Engine/Header.h>

_BeginNamespace(Radix)

class IEngine :public Interface
{
public:
	virtual bool init(const StringValueMap& params) = 0;
	virtual void exit() = 0;
	virtual void update(real elapsed) = 0;
	virtual ISceneSystem* sceneSystem() = 0;
};

extern "C"
{
	_RadixApi void CreateEngine(IEngine** engine);
	_RadixApi void DeleteEngine(IEngine** engine);
}

_EndNamespace(Radix)

#endif//_RADIX_ENGINE_ENGINE_H_
